expression="2-1-1"
# expression="2*3-4*5"
# 给定一个含有数字和运算符的字符串，为表达式添加括号，改变其运算优先级以求出不同的结果。
# 你需要给出所有可能的组合的结果。有效的运算符号包含 +,-以及*。
def diffWaysToCompute(expression):
    #出口条件
    if expression.isdigit():
        #如果当前的字符串表达式仅剩余一个数字
        return [int(expression)]
    res=[]
    for i,char in enumerate(expression):
        if char in ['+','-','*']:
            left=diffWaysToCompute(expression[:i])
            right=diffWaysToCompute(expression[i+1:])

            for j in left:
                for k in right:
                    if char=="+":
                        res.append(j+k)
                    elif char=="-":
                        res.append(j-k)
                    else:
                        res.append(j*k)
    return res
print(diffWaysToCompute(expression))